package com.chinatechstar.prediction.entity;

import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.chinatechstar.component.commons.entity.CreateEntity;
import org.apache.commons.codec.language.bm.Rule;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;

import javax.xml.crypto.Data;
import java.sql.Date;


/**
 * well_co2_pressure
 * 
 * @author Rei
 * @version 1.0.0 2021-06-16
 */
public class PredictionPressure extends CreateEntity implements java.io.Serializable {
    /** 版本号 */
    private static final long serialVersionUID = 7693082072770042655L;

    /* This code was generated by TableGo tools, mark 1 begin. */

    /** 注入压力预测id */
    private Long id;

    /** 压力预测关联co2密度id */
    private Long pressureDensityId;

    /** 井名 */
    private String wellName;

    /** 井类型 */
    private String wellType;

    /** 方案名称 */
    private String planName;

    /** 注入层垂深 */
    private Double injectionDepth;

    /** 地层压力 */
    private Double formationPressure;

    /** 地层温度 */
    private Double formationTemperature;

    /** 地层渗透率 */
    private Double permeability;

    /** co2注入厚度 */
    private Double injectionThickness;

    /** co2注入段长度 */
    private Double injectionLength;

    /** 井口co2密度 */
    private Double wellHeadDensity;

    /** 井底co2密度 */
    private Double wellBottomDensity;

    /** 平均co2密度 */
    private Double averageDensity;

    /** 井底co2粘度 */
    private Double wellBottomViscosity;

    /** co2柱压力 */
    private Double columnPressure;

    /** co2日注入量 */
    private Double dailyInjection;

    /** 井口井底co2密度比（Bg） */
    private Double densityRatio;

    /** a值 */
    private Double valueA;

    /** 分子部分 */
    private Double molecularPart;

    /** 生产压差 */
    private Double productionPressureDvalue;

    /** 井底流压 */
    private Double flowingPressure;

    /** 最大注入压力 */
    private Double injectionPressure;

    /** 赋予安全系数后预测压力 */
    private Double factorPressure;

    /* This code was generated by TableGo tools, mark 1 end. */

    /* This code was generated by TableGo tools, mark 2 begin. */

    /**
     * 获取注入压力预测id
     * 
     * @return 注入压力预测id
     */
    public Long getId() {
        return this.id;
    }

    /**
     * 设置注入压力预测id
     * 
     * @param id
     *          注入压力预测id
     */
    public void setId(Long id) {
        this.id = id;
    }


    public Long getPressureDensityId() {
        return pressureDensityId;
    }

    public void setPressureDensityId(Long pressureDensityId) {
        this.pressureDensityId = pressureDensityId;
    }
    /**
     * 获取井名
     * 
     * @return 井名
     */
    public String getWellName() {
        return this.wellName;
    }

    /**
     * 设置井名
     * 
     * @param wellName
     *          井名
     */
    public void setWellName(String wellName) {
        this.wellName = wellName;
    }

    /**
     * 获取井类型
     * 
     * @return 井类型
     */
    public String getWellType() {
        return this.wellType;
    }

    /**
     * 设置井类型
     * 
     * @param wellType
     *          井类型
     */
    public void setWellType(String wellType) {
        this.wellType = wellType;
    }

    /**
     * 获取方案名
     *
     * @return 方案名
     */
    public String getPlanName() {
        return planName;
    }

    /**
     * 设置方案名
     *
     * @param planName
     *          方案名
     */
    public void setPlanName(String planName) {
        this.planName = planName;
    }
    /**
     * 获取注入层垂深
     * 
     * @return 注入层垂深
     */
    public Double getInjectionDepth() {
        return this.injectionDepth;
    }

    /**
     * 设置注入层垂深
     * 
     * @param injectionDepth
     *          注入层垂深
     */
    public void setInjectionDepth(Double injectionDepth) {
        this.injectionDepth = injectionDepth;
    }

    /**
     * 获取地层压力
     * 
     * @return 地层压力
     */
    public Double getFormationPressure() {
        return this.formationPressure;
    }

    /**
     * 设置地层压力
     * 
     * @param formationPressure
     *          地层压力
     */
    public void setFormationPressure(Double formationPressure) {
        this.formationPressure = formationPressure;
    }

    /**
     * 获取地层温度
     * 
     * @return 地层温度
     */
    public Double getFormationTemperature() {
        return this.formationTemperature;
    }

    /**
     * 设置地层温度
     * 
     * @param formationTemperature
     *          地层温度
     */
    public void setFormationTemperature(Double formationTemperature) {
        this.formationTemperature = formationTemperature;
    }

    /**
     * 获取地层渗透率
     * 
     * @return 地层渗透率
     */
    public Double getPermeability() {
        return this.permeability;
    }

    /**
     * 设置地层渗透率
     * 
     * @param permeability
     *          地层渗透率
     */
    public void setPermeability(Double permeability) {
        this.permeability = permeability;
    }

    /**
     * 获取co2注入厚度
     * 
     * @return co2注入厚度
     */
    public Double getInjectionThickness() {
        return this.injectionThickness;
    }

    /**
     * 设置co2注入厚度
     * 
     * @param injectionThickness
     *          co2注入厚度
     */
    public void setInjectionThickness(Double injectionThickness) {
        this.injectionThickness = injectionThickness;
    }

    /**
     * 获取co2注入段长度
     * 
     * @return co2注入段长度
     */
    public Double getInjectionLength() {
        return this.injectionLength;
    }

    /**
     * 设置co2注入段长度
     * 
     * @param injectionLength
     *          co2注入段长度
     */
    public void setInjectionLength(Double injectionLength) {
        this.injectionLength = injectionLength;
    }

    /**
     * 获取井口co2密度
     * 
     * @return 井口co2密度
     */
    public Double getWellHeadDensity() {
        return this.wellHeadDensity;
    }

    /**
     * 设置井口co2密度
     * 
     * @param wellHeadDensity
     *          井口co2密度
     */
    public void setWellHeadDensity(Double wellHeadDensity) {
        this.wellHeadDensity = wellHeadDensity;
    }

    /**
     * 获取井底co2密度
     * 
     * @return 井底co2密度
     */
    public Double getWellBottomDensity() {
        return this.wellBottomDensity;
    }

    /**
     * 设置井底co2密度
     * 
     * @param wellBottomDensity
     *          井底co2密度
     */
    public void setWellBottomDensity(Double wellBottomDensity) {
        this.wellBottomDensity = wellBottomDensity;
    }

    /**
     * 获取平均co2密度
     * 
     * @return 平均co2密度
     */
    public Double getAverageDensity() {
        return this.averageDensity;
    }

    /**
     * 设置平均co2密度
     * 
     * @param averageDensity
     *          平均co2密度
     */
    public void setAverageDensity(Double averageDensity) {
        this.averageDensity = averageDensity;
    }

    /**
     * 获取井底co2粘度
     * 
     * @return 井底co2粘度
     */
    public Double getWellBottomViscosity() {
        return this.wellBottomViscosity;
    }

    /**
     * 设置井底co2粘度
     * 
     * @param wellBottomViscosity
     *          井底co2粘度
     */
    public void setWellBottomViscosity(Double wellBottomViscosity) {
        this.wellBottomViscosity = wellBottomViscosity;
    }

    /**
     * 获取co2柱压力
     * 
     * @return co2柱压力
     */
    public Double getColumnPressure() {
        return this.columnPressure;
    }

    /**
     * 设置co2柱压力
     * 
     * @param columnPressure
     *          co2柱压力
     */
    public void setColumnPressure(Double columnPressure) {
        this.columnPressure = columnPressure;
    }

    /**
     * 获取co2日注入量
     * 
     * @return co2日注入量
     */
    public Double getDailyInjection() {
        return this.dailyInjection;
    }

    /**
     * 设置co2日注入量
     * 
     * @param dailyInjection
     *          co2日注入量
     */
    public void setDailyInjection(Double dailyInjection) {
        this.dailyInjection = dailyInjection;
    }

    /**
     * 获取井口井底co2密度比（Bg）
     * 
     * @return 井口井底co2密度比（Bg）
     */
    public Double getDensityRatio() {
        return this.densityRatio;
    }

    /**
     * 设置井口井底co2密度比（Bg）
     * 
     * @param densityRatio
     *          井口井底co2密度比（Bg）
     */
    public void setDensityRatio(Double densityRatio) {
        this.densityRatio = densityRatio;
    }

    /**
     * 获取a值
     * 
     * @return a值
     */
    public Double getValueA() {
        return this.valueA;
    }

    /**
     * 设置a值
     * 
     * @param valueA
     *          a值
     */
    public void setValueA(Double valueA) {
        this.valueA = valueA;
    }

    /**
     * 获取分子部分
     * 
     * @return 分子部分
     */
    public Double getMolecularPart() {
        return this.molecularPart;
    }

    /**
     * 设置分子部分
     * 
     * @param molecularPart
     *          分子部分
     */
    public void setMolecularPart(Double molecularPart) {
        this.molecularPart = molecularPart;
    }

    /**
     * 获取生产压差
     * 
     * @return 生产压差
     */
    public Double getProductionPressureDvalue() {
        return this.productionPressureDvalue;
    }

    /**
     * 设置生产压差
     * 
     * @param productionPressureDvalue
     *          生产压差
     */
    public void setProductionPressureDvalue(Double productionPressureDvalue) {
        this.productionPressureDvalue = productionPressureDvalue;
    }

    /**
     * 获取井底流压
     * 
     * @return 井底流压
     */
    public Double getFlowingPressure() {
        return this.flowingPressure;
    }

    /**
     * 设置井底流压
     * 
     * @param flowingPressure
     *          井底流压
     */
    public void setFlowingPressure(Double flowingPressure) {
        this.flowingPressure = flowingPressure;
    }

    /**
     * 获取最大注入压力
     * 
     * @return 最大注入压力
     */
    public Double getInjectionPressure() {
        return this.injectionPressure;
    }

    /**
     * 设置最大注入压力
     * 
     * @param injectionPressure
     *          最大注入压力
     */
    public void setInjectionPressure(Double injectionPressure) {
        this.injectionPressure = injectionPressure;
    }

    /**
     * 获取赋予安全系数后预测压力
     *
     * @return 赋予安全系数后预测压力
     */
    public Double getFactorPressure() {
        return factorPressure;
    }

    /**
     * 设置赋予安全系数后预测压力
     *
     * @param factorPressure
     *          赋予安全系数后预测压力
     */
    public void setFactorPressure(Double factorPressure) {
        this.factorPressure = factorPressure;
    }
    @Override
    public boolean equals(Object obj) {
        return EqualsBuilder.reflectionEquals(obj, this);
    }
    
    @Override
    public int hashCode() {
        return HashCodeBuilder.reflectionHashCode(this);
    }
    
    @Override
    public String toString() {
        return ReflectionToStringBuilder.toString(this);
    }

    /* This code was generated by TableGo tools, mark 3 end. */
}